fflush()
ফাংশনের ব্যবহারfflush()
ফাংশনটি সি প্রোগ্রামিং ভাষায় stdio.h
হেডার ফাইলে সংজ্ঞায়িত এবং এটি ফাইল পয়েন্টারের মাধ্যমে বাইন্ড করা আউটপুট স্ট্রিমের বাফারকে ফ্লাশ (empty) করে। যখন কোনো আউটপুট স্ট্রিমে ডেটা লেখা হয়, তখন সেই ডেটা আউটপুট ডিভাইসে বা ফাইলে লেখা না হয়ে বাফারে স্টোর হয়। fflush()
ফাংশনটি এই বাফারে থাকা সমস্ত ডেটা ফাইল বা আউটপুট ডিভাইসে পাঠিয়ে দেয়, যা ডেটা নিশ্চিতভাবে আউটপুট ডিভাইসে লেখা নিশ্চিত করে।
fflush()
ফাংশনটি প্রধানত আউটপুট স্ট্রিমের জন্য ব্যবহৃত হয় এবং সাধারণত কনসোল বা ফাইল আউটপুট বাফার ফ্লাশ করার জন্য ব্যবহৃত হয়। এটি ইন্টারঅ্যাকটিভ প্রোগ্রামিংয়ে, যেখানে আউটপুট ডেটা শীঘ্রই ব্যবহারকারী বা অন্য প্রোগ্রামের কাছে পৌঁছানোর প্রয়োজন, সেক্ষেত্রে খুবই উপকারী।
int fflush(FILE *stream);
stream
: আউটপুট স্ট্রিম পয়েন্টার (যেমন stdout
, stderr
, অথবা একটি ফাইল পয়েন্টার)।fflush()
ফাংশনের ব্যবহারstdout
(স্ট্যান্ডার্ড আউটপুট) এর জন্য ব্যবহার: যখন আপনি আউটপুট লেখেন, তবে এটি বাফারে জমা হয় এবং ডিভাইসে বা কনসোলে ডেটা না পাঠিয়ে থাকার সম্ভাবনা থাকে। fflush(stdout)
ফাংশনটি এই ডেটা ফ্লাশ করে আউটপুট ডিভাইসে পাঠিয়ে দেয়।fflush()
ফাংশনটি ফাইল পয়েন্টারের জন্য ব্যবহার করা হয়।stderr
(স্ট্যান্ডার্ড এরর) এর জন্য ব্যবহার: যখন ত্রুটির বার্তা তৈরি করা হয়, তখন আপনি এটি তৎক্ষণাত দেখতে চাইলে fflush(stderr)
ব্যবহার করতে পারেন।stdout
এর জন্য fflush()
ব্যবহার#include <stdio.h>
int main() {
printf("Hello, ");
fflush(stdout); // স্ট্যান্ডার্ড আউটপুট ফ্লাশ করা
printf("World!\n");
return 0;
}
এখানে fflush(stdout)
ফাংশনটি "Hello, "
অংশটিকে কনসোলে পাঠিয়ে দেয়। এটি নিশ্চিত করে যে, প্রথম অংশটি ব্যবহারকারী দেখতে পায়, যদিও পরবর্তী অংশ "World!"
লেখার জন্য কিছু সময় নেয়।
fflush()
ব্যবহার#include <stdio.h>
int main() {
FILE *file = fopen("output.txt", "w");
if (file == NULL) {
printf("Unable to open file.\n");
return 1;
}
fprintf(file, "Writing to file...\n");
fflush(file); // ফাইলের মধ্যে ডেটা লিখে ফেলবে
// এখন ফাইল বন্ধ করা
fclose(file);
return 0;
}
এখানে, fflush(file)
ফাংশনটি "Writing to file..."
লেখাটি output.txt
ফাইলে লিখে ফেলবে, নিশ্চিত করে যে, ফাইলটি সঠিকভাবে আপডেট হয়।
fflush()
ফাংশনটি আউটপুট স্ট্রিম বা ফাইল পয়েন্টারের বাফারকে ফ্লাশ করতে ব্যবহৃত হয়। এটি নিশ্চিত করে যে, বাফারে থাকা সমস্ত ডেটা আউটপুট ডিভাইসে বা ফাইলে পাঠানো হয়, তাৎক্ষণিকভাবে ফলাফল পাওয়ার জন্য এটি প্রয়োজনীয় হতে পারে। এটি প্রাথমিকভাবে আউটপুট স্ট্রিমের জন্য ব্যবহৃত হয়, তবে ফাইল পয়েন্টারেও এটি কার্যকরী।
ফাংশন | কাজ | সিঙ্কট্যাক্স |
---|---|---|
fflush() | আউটপুট স্ট্রিম বা ফাইলের বাফার ফ্লাশ করা | int fflush(FILE *stream); |
এটি বিশেষভাবে যখন আপনি চান যে, আপনার ডেটা তৎক্ষণাৎ ডিস্ক বা কনসোলে পৌঁছাক, তখন ব্যবহার করা হয়।
common.read_more